// ************* directives *******************/

// hide images

.hide-images {
  img {
    display: none !important;
  }

  #arena {
    background-image: none !important;
  }

  // TODO not sure if need
  .portrait-holder {
    span {
      display: inline;
    }
  }
}

//************* trainer page *********************//

.train-container {
  display: table-row;
}

.feat-list-container {
  display: table-cell;
  vertical-align: top;
}

.arrows-container {
  display: table-cell;
  vertical-align: middle;
}

.feat-category-list, .feat-list {
  margin: 0;
  padding: 0;
  list-style: none;
}

.arrow {
  display: block;
  width: 100%;
}

.feat-icon-holder {
  height: 32px;
  width: 32px;
  padding: 5px;
}

.feat-name-holder {
  vertical-align: middle;
}

.selectedFeat {
  background-color: goldenrod;
}

//************* character page *******************//

.character-page-holder {
  display: table;
  width: 100%;
}

.character-page {
  display: table-row;
}

.character-page>div {
  display: table-cell;
  vertical-align: top;
}

.character-page-section {
  position: relative;
}

.character-page ul, .character-page ol {
  list-style: none;
}

.character-page h3 {
  text-align: center;
}

.character-page h4 {
  padding-left: 10px;
}

#attribute-list span:first-child {
  text-transform: capitalize;
  text-align: left;
}

#attribute-list span {
  text-align: right;
}

.value-list {
  display: table;
  width: 100%;
  border-spacing: 2px;
}

.value-list li {
  display: table-row;
  cursor: pointer;
}

.value-list span {
  display: table-cell;
  padding: 0 5px;
  border: 1px solid black;
  border-radius: 10px;
}

.value-list span:last-child {
  text-align: center;
}

/*****************************************/
/*****  		animation 			 *****/
/*****************************************/

#animation-holder {
  padding: 20px;
  height: 150px;
}

.animation-container {
  position: relative;
  height: 100%;
}

.animation-frame {
  left: 30px;
  bottom: 30px;
}

/*****************************************/
/*****  		inventory 			 *****/
/*****************************************/
.inventory {
  width: 221px;
  height: 315px;
  background-image: url('../images/misc/inventory.png');
  background-repeat: no-repeat;
  position: relative;

  margin: 0 auto 10px;
}

.inventory-slot {
  position: absolute;
  width: 32px;
  height: 32px;

  /* weapons */
  &.mainHand {
    top: 38px;
    left: 7px;
  }

  &.sidearm {
    top: 141px;
    left: 42px;
  }

  &.offHand {
    left: 145px;
    top: 126px;
  }
  /* armor */
  &.head {
    top: 7px;
    left: 104px;
  }

  &.chest {
    left: 104px;
    top: 85px;
  }

  &.legs {
    left: 100px;
    top: 170px;
  }

  &.feet {
    left: 109px;
    top: 212px;
  }

  &.arms {
    left: 43px;
    top: 37px;
  }

  &.hands {
    left: 182px;
    top: 126px;
  }
  /* misc */
  &.waist {
    left: 103px;
    top: 124px;
  }

  &.back {
    left: 149px;
    top: 171px;
  }

  &.neck {
    left: 104px;
    top: 46px;
  }

  &.finger1 {
    left: 182px;
    top: 42px;
  }

  &.finger2 {
    left: 182px;
    top: 78px;
  }

  &.charm1 {
    left: 4px;
    top: 212px;
  }

  &.charm2 {
    left: 43px;
    top: 212px;
  }

}

// vertical tabs

.vertical-tabs {
  display: table-row;

  ul {
    display: table-cell;
    vertical-align: top;
    list-style: none;
    padding: 0;
    margin: 0;
  }
}

.vertical-tabs-header-list {
  min-width: 200px;

  li {
    cursor: pointer;
  }

  .selected {
    border: 1px solid blue;
  }
}

.vertical-tabs-content-list {

  button {
    display: block;
  }
}

// button bar

.buttonbar {
  a {
    display: inline-block;
    position: relative;

    margin: 0 10px;
    height: 100px;
    min-width: 150px;

    border: 1px solid black;
    border-radius: 10px;

    padding: 0 5px;
    text-align: center;
    text-decoration: none;
    color: black;
    line-height: 100px;
    font-size: 20px;
    font-family: Verdana, sans-serif;

    &:hover {
      box-shadow: 0px 0px 15px 8px goldenrod;
    }
  }

  img {
    display: none;

    background-color: red;

    height: 150px;
    width: 120px;

    position: absolute;
    left: 15px;
    bottom: 100%;
  }
}

// ************* choices page *******************/

/* category name *

h2 {
  font-size: 18px;
  text-align: center;
}

/* choice list */

.portrait-list {
  list-style: none;
  margin: 0 auto;
  // width: 936px;
}

.portrait-holder {
  display: inline-block;
  margin: 5px;
  position: relative;
}

/*

.portrait-holder button {
  border: 1px solid gray;
  margin: 0;
  padding: 0;
  cursor: pointer;
  background-color: transparent;
}

.portrait-holder button::-moz-focus-inner {
  border: 1px solid gray;
  padding: 0;
}

.portrait-holder button:HOVER {
  border: 1px solid gold;
}

.portrait-holder .portrait {
  width: 300px;
  height: 300px;
}

.portrait-holder span {
  display: none;
}

/* large items for choosing path *

.large-items {
  width: 830px;
}

.large-items li {
  margin: 0;
}

.large-items li:FIRST-CHILD {
  margin-right: 20px;
}

.large-items .portrait {
  width: 400px;
  height: 400px;
}

/* locked *

img.locked-icon {
  position: absolute;
  height: 128px;
  width: 128px;
  top: 50%;
  left: 50%;
  margin-top: -64px;
  margin-left: -64px;
}

.locked-overlay {
  position: absolute;
  height: 100%;
  width: 100%;
  background-color: gray;
  opacity: 0.7;
}

/******** debatable */

/******** arena *************/

.animation-frame {
  background-repeat: no-repeat;
  background-color: transparent;
  position: absolute;
  left: 0px;
  bottom: 0px;
}

#arena {
  padding: 100px 50px 20px;
  display: inline-block;
}

.arena-grid {
  display: table;
  border-collapse: collapse;
}

.arena-row {
  display: table-row;
}

.arena-cell {
  display: table-cell;
  border: 1px solid black;
  height: 50px;
  width: 50px;
  height: 50px;
}

.content-holder {
  position: relative;
  height: 100%;
  pointer-events: none;
}

.flipped {
  -moz-transform: scaleX(-1);
  -o-transform: scaleX(-1);
  -webkit-transform: scaleX(-1);
  transform: scaleX(-1);
  filter: FlipH;
  -ms-filter: "FlipH";
}

.shadow {
  display: none;
  position: absolute;
  width: 50px;
  height: 50px;
}

.attackable .shadow {
  display: block;
  background-color: red;
  opacity: 0.4;
}

.attackable-left .shadow {
  cursor: url("../images/icons/mouse/attack-left.png"), pointer;
}

.attackable-right .shadow {
  cursor: url("../images/icons/mouse/attack-right.png"), pointer;
}

.attackable-up .shadow {
  cursor: url("../images/icons/mouse/attack-up.png"), pointer;
}

.attackable-down .shadow {
  cursor: url("../images/icons/mouse/attack-down.png"), pointer;
}

.chargeable .shadow {
  display: block;
  background-color: red;
  opacity: 0.4;
  cursor: url("../images/icons/mouse/charge.png"), pointer;
}

.reachable .shadow {
  display: block;
  background-color: gray;
  opacity: 0.5;
  cursor: url("../images/icons/mouse/move.png"), pointer;
}

.selected .shadow {
  display: block;
  background-color: gold;
  opacity: 0.5;
}

.tree {
  pointer-events: none;

  position: absolute;
  top: -76px;
  left: -14px;
  background: url('../images/tree.png') no-repeat;
  width: 78px;
  height: 126px;
}